package vista;

import Bls.LibroBlLocal;
import Bls.PrestamoBlLocal;
import Bls.UsuarioBlLocal;
import Modelo.Libro;
import Modelo.Prestamo;
import Modelo.Usuario;
import java.util.ArrayList;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.event.ActionEvent;

@ManagedBean
@SessionScoped
public class PrestamoBean {

    @EJB
    private PrestamoBlLocal prestamoBl;
     
    @EJB
    private UsuarioBlLocal usuarioBL;
   
    @EJB
    private LibroBlLocal libroBl;
    
private int n;
private Libro libro;
private String accion;
private Usuario usuario;
private Prestamo prestamo;
private List<Libro> listaLibros;
private String CodigoLibro; 
private List<Usuario> listaUsuarios;
private List<Prestamo> ListaPrestamos;
private int idUsuarioSeleccionado;
private int idUsuarioSelicionado;
    private ArrayList<Libro> listaLibro;

    public PrestamoBean() {
        prestamo= new Prestamo();
        listaLibros = new ArrayList<Libro>();
    }

    public Libro getLibro() {
        return libro;
    }

    public void setLibro(Libro libro) {
        this.libro = libro;
    }

    public Usuario getUsuario() {
        return usuario;
    }

    public void setUsuario(Usuario usuario) {
        this.usuario = usuario;
    }

    public Prestamo getPrestamo() {
        return prestamo;
    }

    public void setPrestamo(Prestamo prestamo) {
        this.prestamo = prestamo;
    }

    public String getCodigoLibro() {
        return CodigoLibro;
    }

    public void setCodigoLibro(String CodigoLibro) {
        this.CodigoLibro = CodigoLibro;
    }

    public int getIdUsuarioSelicionado() {
        return idUsuarioSelicionado;
    }

    public void setIdUsuarioSelicionado(int idUsuarioSelicionado) {
        this.idUsuarioSelicionado = idUsuarioSelicionado;
    }
    
    public List<Libro> getListaLibros(){
        
        return listaLibros;
    }
     public List<Usuario> getListaUsuario(){
        listaUsuarios=usuarioBL.getAll();
        return listaUsuarios;
    }
       public List<Prestamo> getListaPrestamos(){
        ListaPrestamos=prestamoBl.getAll();
        return ListaPrestamos;
    }
       public String preparaAutor(){
    prestamo.setId(idUsuarioSeleccionado);
    return "PrestamoConfirmar";
    }
       
       public void prepararNuevo(ActionEvent evt){
        prestamo=new Prestamo();
        listaLibro=new ArrayList<Libro>();
        accion = "Nuevo";
}
       public String procesarAccion(){
           prestamoBl.lendBooks(prestamo.getIdusuario(), listaLibro);
        return "Prestamo";
       }
       public void Eliminar(ActionEvent evt){
        System.out.println(evt.getComponent().getClientId());
        n=Integer.parseInt(evt.getComponent().getClientId().split(":")[2]);
        System.out.println("el numero es:"+n);
        listaLibros.remove(n);
}    
public void agraegarLibro(ActionEvent evt){
        Libro l=libroBl.findByClaveForLend(CodigoLibro);
        if(l!=null){
        listaLibros.add(l);
}
}
}